Software testing is commonly used to ensure that software is stable and functions as expected, among other things. When a source code file is checked in to a source control system that merges working copies of code (referred to as “branches”), the system may build software from the source code and run tests on the software that is built. However, such tests are typically high-level static tests that have no relevance to the particular source code that was checked in. As a result, the testing may not be targeted to the checked-in code and hence provides a lower level of guaranteed stability on a given branch.